package src.com.atguigu04.set;

import org.junit.Test;

import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;

/**
 * ClassName: SetTest
 * Description:
 *
 * @Author liu
 * @Create 2025/4/2 21:32
 * @Version 1.0
 */
public class SetTest {
    @Test
    public void test1(){
        Set set = new HashSet();

        set.add("AA");
        set.add(123);
        set.add("BB");
        set.add(new Person("Tom",12));
        //如果Person类中没有hashCode的话，就是不同的哈希值，就不打印
        set.add(new Person("Tom",12));//不可重复性：添加到Set中的元素是不能相同的

        //迭代器
        Iterator iterator = set.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
        }
    }

    @Test
    public void test2(){
        Set set = new LinkedHashSet();
//用于记录添加元素的先后顺序。即：我们可以按照添加元素的顺序,实现遍历。便于频繁的查询操作。
        set.add("AA");
        set.add(123);
        set.add("BB");
        set.add(new Person("Tom",12));
        set.add(123);
        set.add("CC");
        //迭代器
        Iterator iterator = set.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
        }
    }

}
